package com.example.assetmanagement.service;

import com.example.assetmanagement.common.PageRequest;
import com.example.assetmanagement.common.PageResponse;
import com.example.assetmanagement.domain.OperationLog;

import java.util.List;
import java.util.Map;

public interface OperationLogService {

    PageResponse<OperationLog> list(PageRequest pageRequest, String module, String operationType, Long userId);

    OperationLog getById(Long id);

    void add(OperationLog log);

    void delete(Long id);

    void batchDelete(List<Long> ids);

    void clear();

    Map<String, Object> stats();

    List<Map<String, Object>> operationTypeStats();

    List<Map<String, Object>> moduleStats();
} 